package com.ssy.lingxi.member.merchant.model.constant;

import com.ssy.lingxi.common.language.LanguageHolder;

/**
 * “申请会员”页面，申请按钮状态枚举
 * @author 万宁
 * @version 2.0.0
 * @date 2021-07-12
 */
public enum MemberApplyButtonStatusEnum {
    /**
     * 正常状态（可继续申请） - 0
     */
    PROCEED(0, true,false, "申请成为本店会员", "申请成为本店会员"),

    /**
     * 入库审核中 - 1
     */
    DEPOSITING (1, true,false, "已申请入库会员", "已申请入库供应商"),

    /**
     * 入库审核已经通过 - 2
     */
    DEPOSIT_PASSED(2, true,false, "已成为入库会员", "已成为入库供应商"),

    /**
     * 淘汰 - 3
     */
    ELIMINATED(3, true,false, "申请成为入库会员", "申请成为入库供应商"),

    /**
     * 黑名单 - 4
     */
    BLACKLIST(4, true,true, "申请成为入库会员", "申请成为入库供应商"),

    /**
     * 不符合条件，不能申请
     */
    CAN_NOT_APPLY(5, false,true, "申请成为本店会员", "申请成为本店会员"),

    /**
     * 当会员自己查看自己时，不显示按钮
     */
    DO_NOT_SHOW(6, false, true, "", "");

    MemberApplyButtonStatusEnum(Integer code, Boolean show, Boolean disabled, String msg, String channelShopMsg) {
        this.code = code;
        this.show = show;
        this.disabled = disabled;
        this.msg = msg;
        this.channelShopMsg = channelShopMsg;
    }

    private Integer code;

    private Boolean show;

    private Boolean disabled;

    private String msg;

    /**
     * 渠道商城展示的信息
     */
    private String channelShopMsg;

    public Integer getCode() {
        return code;
    }

    public void setCode(Integer code) {
        this.code = code;
    }

    public Boolean getShow() {
        return show;
    }

    public void setShow(Boolean show) {
        this.show = show;
    }

    public Boolean getDisabled() {
        return disabled;
    }

    public void setDisabled(Boolean disabled) {
        this.disabled = disabled;
    }

    public String getMsg() {
        String key = "MemberApplyButtonStatusEnum.".concat(String.valueOf(this.code));
        return LanguageHolder.getName(key);
    }

    public void setMsg(String msg) {
        this.msg = msg;
    }

    public String getChannelShopMsg() {
        String key = "MemberApplyButtonStatusEnum.c.".concat(String.valueOf(this.code));
        return LanguageHolder.getName(key);
    }

    public void setChannelShopMsg(String channelShopMsg) {
        this.channelShopMsg = channelShopMsg;
    }
}
